if (! ("ace" in window)) {
    window.ace = {}
}
jQuery(function(a) {
    window.ace.click_event = a.fn.tap ? "tap": "click"
});
jQuery(function(a) {
    ace.handle_side_menu(jQuery);
    ace.enable_search_ahead(jQuery);
    ace.general_things(jQuery);
    ace.widget_boxes(jQuery);
    ace.widget_reload_handler(jQuery)
});
ace.handle_side_menu = function(a) {
    a("#menu-toggler").on(ace.click_event,
    function() {
        a("#sidebar").toggleClass("display");
        a(this).toggleClass("display");
        return false
    });
    var c = a("#sidebar").hasClass("menu-min");
    a("#sidebar-collapse").on(ace.click_event,
    function() {
        c = a("#sidebar").hasClass("menu-min");
        ace.settings.sidebar_collapsed(!c)
    });
    var b = navigator.userAgent.match(/OS (5|6|7)(_\d)+ like Mac OS X/i);
    a(".nav-list").on(ace.click_event,
    function(h) {
        var g = a(h.target).closest("a");
        if (!g || g.length == 0) {
            return
        }
        c = a("#sidebar").hasClass("menu-min");
        if (!g.hasClass("dropdown-toggle")) {
            if (c && ace.click_event == "tap" && g.get(0).parentNode.parentNode == this) {
                var i = g.find(".menu-text").get(0);
                if (h.target != i && !a.contains(i, h.target)) {
                    return false
                }
            }
            if (b) {
                document.location = g.attr("href");
                return false
            }
            return
        }
        var f = g.next().get(0);
        if (!a(f).is(":visible")) {
            var d = a(f.parentNode).closest("ul");
            if (c && d.hasClass("nav-list")) {
                return
            }
            d.find("> .open > .submenu").each(function() {
                if (this != f && !a(this.parentNode).hasClass("active")) {
                    a(this).slideUp(200).parent().removeClass("open")
                }
            })
        } else {}
        if (c && a(f.parentNode.parentNode).hasClass("nav-list")) {
            return false
        }
        a(f).slideToggle(200).parent().toggleClass("open");
        return false
    })
};
ace.general_things = function(a) {
    a('.ace-nav [class*="icon-animated-"]').closest("a").on("click",
    function() {
        var d = a(this).find('[class*="icon-animated-"]').eq(0);
        var c = d.attr("class").match(/icon\-animated\-([\d\w]+)/);
        d.removeClass(c[0]);
        a(this).off("click")
    });
    a(".nav-list .badge[title],.nav-list .label[title]").tooltip({
        placement: "right"
    });
    a("#ace-settings-btn").on(ace.click_event,
    function() {
        a(this).toggleClass("open");
        a("#ace-settings-box").toggleClass("open")
    });
    a("#ace-settings-navbar").on("click",
    function() {
        ace.settings.navbar_fixed(this.checked)
    }).each(function() {
        this.checked = ace.settings.is("navbar", "fixed")
    });
    a("#ace-settings-sidebar").on("click",
    function() {
        ace.settings.sidebar_fixed(this.checked)
    }).each(function() {
        this.checked = ace.settings.is("sidebar", "fixed")
    });
    a("#ace-settings-breadcrumbs").on("click",
    function() {
        ace.settings.breadcrumbs_fixed(this.checked)
    }).each(function() {
        this.checked = ace.settings.is("breadcrumbs", "fixed")
    });
    a("#ace-settings-add-container").on("click",
    function() {
 ace.settings.main_container_fixed(this.checked)
    }).each(function() {
        this.checked = ace.settings.is("main-container", "fixed")
    });
    a("#ace-settings-rtl").removeAttr("checked").on("click",
    function() {
        ace.switch_direction(jQuery)
    });
    a("#btn-scroll-up").on(ace.click_event,
    function() {
        var c = Math.min(400, Math.max(100, parseInt(a("html").scrollTop() / 3)));
        a("html,body").animate({
            scrollTop: 0
        },
        c);
        return false
    });
    try {
        a("#skin-colorpicker").ace_colorpicker()
    } catch(b) {}
    a("#skin-colorpicker").on("change",
    function() {
        var d = a(this).find("option:selected").data("skin");
        var c = a(document.body);
        c.removeClass("skin-1 skin-2 skin-3");
        if (d != "default") {
            c.addClass(d)
        }
        if (d == "skin-1") {
            a(".ace-nav > li.grey").addClass("dark")
        } else {
            a(".ace-nav > li.grey").removeClass("dark")
        }
        if (d == "skin-2") {
            a(".ace-nav > li").addClass("no-border margin-1");
            a(".ace-nav > li:not(:last-child)").addClass("light-pink").find('> a > [class*="icon-"]').addClass("pink").end().eq(0).find(".badge").addClass("badge-warning")
        } else {
            a(".ace-nav > li").removeClass("no-border margin-1");
            a(".ace-nav > li:not(:last-child)").removeClass("light-pink").find('> a > [class*="icon-"]').removeClass("pink").end().eq(0).find(".badge").removeClass("badge-warning")
        }
        if (d == "skin-3") {
            a(".ace-nav > li.grey").addClass("red").find(".badge").addClass("badge-yellow")
        } else {
            a(".ace-nav > li.grey").removeClass("red").find(".badge").removeClass("badge-yellow")
        }
    })
};
ace.widget_boxes = function(a) {
    a(document).on("hide.bs.collapse show.bs.collapse",
    function(c) {
        var b = c.target.getAttribute("id");
        a('[href*="#' + b + '"]').find('[class*="icon-"]').each(function() {
            var e = a(this);
            var d;
            var f = null;
            var g = null;
            if ((f = e.attr("data-icon-show"))) {
                g = e.attr("data-icon-hide")
            } else {
                if (d = e.attr("class").match(/icon\-(.*)\-(up|down)/)) {
                    f = "icon-" + d[1] + "-down";
                    g = "icon-" + d[1] + "-up"
                }
            }
            if (f) {
                if (c.type == "show") {
                    e.removeClass(f).addClass(g)
                } else {
                    e.removeClass(g).addClass(f)
                }
                return false
            }
        })
    });
    a(document).on("click.ace.widget", "[data-action]",
    function(o) {
        o.preventDefault();
        var n = a(this);
        var p = n.data("action");
        var b = n.closest(".widget-box");
        if (b.hasClass("ui-sortable-helper")) {
            return
        }
        if (p == "collapse") {
            var j = b.hasClass("collapsed") ? "show": "hide";
            var f = j == "show" ? "shown": "hidden";
            var c;
            b.trigger(c = a.Event(j + ".ace.widget"));
            if (c.isDefaultPrevented()) {
                return
            }
            var g = b.find(".widget-body");
            var m = n.find("[class*=icon-]").eq(0);
            var h = m.attr("class").match(/icon\-(.*)\-(up|down)/);
            var d = "icon-" + h[1] + "-down";
            var i = "icon-" + h[1] + "-up";
            var l = g.find(".widget-body-inner");
            if (l.length == 0) {
                g = g.wrapInner('<div class="widget-body-inner"></div>').find(":first-child").eq(0)
            } else {
                g = l.eq(0)
            }
            var e = 300;
            var k = 200;
            if (j == "show") {
                if (m) {
                    m.addClass(i).removeClass(d)
                }
                b.removeClass("collapsed");
                g.slideUp(0,
                function() {
                    g.slideDown(e,
                    function() {
                        b.trigger(c = a.Event(f + ".ace.widget"))
                    })
                })
            } else {
                if (m) {
                    m.addClass(d).removeClass(i)
                }
                g.slideUp(k,
                function() {
                    b.addClass("collapsed");
                    b.trigger(c = a.Event(f + ".ace.widget"))
                })
            }
        } else {
            if (p == "close") {
                var c;
                b.trigger(c = a.Event("close.ace.widget"));
                if (c.isDefaultPrevented()) {
                    return
                }
                var r = parseInt(n.data("close-speed")) || 300;
                b.hide(r,
                function() {
                    b.trigger(c = a.Event("closed.ace.widget"));
                    b.remove()
                })
            } else {
                if (p == "reload") {
                    var c;
                    b.trigger(c = a.Event("reload.ace.widget"));
                    if (c.isDefaultPrevented()) {
                        return
                    }
                    n.blur();
                    var q = false;
                    if (b.css("position") == "static") {
                        q = true;
                        b.addClass("position-relative")
                    }
                    b.append('<div class="widget-box-overlay"><i class="icon-spinner icon-spin icon-2x white"></i></div>');
                    b.one("reloaded.ace.widget",
                    function() {
                        b.find(".widget-box-overlay").remove();
                        if (q) {
                            b.removeClass("position-relative")
                        }
                    })
                } else {
                    if (p == "settings") {
                        var c = a.Event("settings.ace.widget");
                        b.trigger(c)
                    }
                }
            }
        }
    })
};
ace.widget_reload_handler = function(a) {
    a(document).on("reload.ace.widget", ".widget-box",
    function(b) {
        var c = a(this);
        setTimeout(function() {
            c.trigger("reloaded.ace.widget")
        },
        parseInt(Math.random() * 1000 + 1000))
    })
};
ace.enable_search_ahead = function(a) {
    ace.variable_US_STATES = ["Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut", "Delaware", "Florida", "Georgia", "Hawaii", "Idaho", "Illinois", "Indiana", "Iowa", "Kansas", "Kentucky", "Louisiana", "Maine", "Maryland", "Massachusetts", "Michigan", "Minnesota", "Mississippi", "Missouri", "Montana", "Nebraska", "Nevada", "New Hampshire", "New Jersey", "New Mexico", "New York", "North Dakota", "North Carolina", "Ohio", "Oklahoma", "Oregon", "Pennsylvania", "Rhode Island", "South Carolina", "South Dakota", "Tennessee", "Texas", "Utah", "Vermont", "Virginia", "Washington", "West Virginia", "Wisconsin", "Wyoming"];
    try {
        a("#nav-search-input").typeahead({
            source: ace.variable_US_STATES,
            updater: function(c) {
                a("#nav-search-input").focus();
                return c
            }
        })
    } catch(b) {}
};
ace.switch_direction = function(d) {
    var c = d(document.body);
    c.toggleClass("rtl").find(".dropdown-menu:not(.datepicker-dropdown,.colorpicker)").toggleClass("pull-right").end().find(".pull-right:not(.dropdown-menu,blockquote,.profile-skills .pull-right)").removeClass("pull-right").addClass("tmp-rtl-pull-right").end().find(".pull-left:not(.dropdown-submenu,.profile-skills .pull-left)").removeClass("pull-left").addClass("pull-right").end().find(".tmp-rtl-pull-right").removeClass("tmp-rtl-pull-right").addClass("pull-left").end().find(".chosen-container").toggleClass("chosen-rtl").end();
    function a(h, g) {
        c.find("." + h).removeClass(h).addClass("tmp-rtl-" + h).end().find("." + g).removeClass(g).addClass(h).end().find(".tmp-rtl-" + h).removeClass("tmp-rtl-" + h).addClass(g)
    }
    function b(h, g, i) {
        i.each(function() {
            var k = d(this);
            var j = k.css(g);
            k.css(g, k.css(h));
            k.css(h, j)
        })
    }
    a("align-left", "align-right");
    a("no-padding-left", "no-padding-right");
    a("arrowed", "arrowed-right");
    a("arrowed-in", "arrowed-in-right");
    a("messagebar-item-left", "messagebar-item-right");
    var e = d("#piechart-placeholder");
    if (e.size() > 0) {
        var f = d(document.body).hasClass("rtl") ? "nw": "ne";
        e.data("draw").call(e.get(0), e, e.data("chart"), f)
    }
};